﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using PontoAtividadeUtilidades;

namespace PontoAtividadeDotNet
{
    public partial class AtividadeForm : Form
    {
        public AtividadeForm()
        {
            InitializeComponent();
        }

        private void carregarAtividadeForm(object sender, EventArgs e)
        {
            RegistroPonto.criarLogInicial();
        }

        private void botaoOK_Click(object sender, EventArgs e)
        {
            // Atentendo a issue 4 - Para o caso de virar o dia com o programa aberto.
            RegistroPonto.criarLogInicial();
            
            if (!fdAtividade.Text.Trim().Equals(""))
            {
                RegistroPonto.inserirAtividade(fdAtividade.Text);
                fdAtividadeAtual.Text = fdAtividade.Text;
                fdAtividade.Text = "";
            }
        }

        private void botaoRecentes_Click(object sender, EventArgs e)
        {
            HistoricoAtividadesForm historicoAtividadeForm = new HistoricoAtividadesForm();
            historicoAtividadeForm.ShowDialog(this);
        }

        private void fdAtividade_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                botaoOK_Click(sender, e);
            }
        }

        private void AtividadeForm_Resize(object sender, EventArgs e)
        {
            if (WindowState == FormWindowState.Minimized)
            {
                this.Hide();
                this.ShowInTaskbar = false;
            }
        }

        private void mostrarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
            this.ShowInTaskbar = true;
        }

        private void fecharToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
            this.ShowInTaskbar = true;
        }

        private void relatorioToolStripMenuItem_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start(Constantes.NOME_PROGRAMA_RELATORIO);
        }

        private void botaoCancelar_Click(object sender, EventArgs e)
        {
            this.WindowState = FormWindowState.Minimized;
        }

        private void fdAtividadeAtual_Enter(object sender, EventArgs e)
        {
            fdAtividade.Focus();
        }

        private void fdAtividadeAtual_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            if (!Util.isStringVazia(fdAtividadeAtual.Text))
            {
                fdAtividade.Text = fdAtividadeAtual.Text;
            }
        }

    }
}